Field of the Invention
This invention relates generally to the field of computer processors. More particularly, the invention relates to an apparatus and method for load balancing in a ray tracing architecture.
Description of the Related Art
Ray tracing is a graphics processing technique for generating an image by traversing the path of each light ray through pixels in an image plane and simulating the effects of its incidence upon different objects. Following traversal calculations, each ray is typically tested for intersection with some subset of the objects in the scene. Once the nearest object has been identified, the incoming light at the point of intersection is estimated, the material properties of the object are determined, and this information is used to calculate the final color of the pixel.
There are several companies that are currently building fixed-function ray tracing architectures. The idea of these architectures is to devise a fixed-function (FF) unit for ray traversal and a FF unit for ray intersection, and then allow the graphics processing unit (GPU) handle shading and ray generation. The designer of the FF unit must decide which relationship should exist between the traversal unit and the intersection unit. If everything is perfectly balanced, then these two units will be fully busy at all times. However, when real scenes are rendered, this is unfortunately, extremely unlikely to happen. Instead, one of them is likely to become a bottleneck and the other one will be idle. This invention describes a novel approach to solving that problem, and I am not aware of any other solutions to this.